<article>
    <h1><?php echo $GLOBALS['title'] ?></h1>
    <p>前面我们学习了sql语句的操作，但是我们大部分都是操作的单张表，大部分问题只有一张表是不能解决的。我们需要从多张表中获得数据，或者通过其他表的数据删除某个表的记录等操作，这个时候就需要多表操作。在了解多表操作前我们先了解下表关系。</p>
	<h2><a>表关系</a></h2>
	<h3>一对一关系</h3>
	<p>一个城市只能有一个区号这种关系是最简单的一对一关系 </p>
	<p>一个人只能对应一个身份证号，这也是一对一关系</p>
	<p>如果两张表，一张存储学生的基本信息，一张存学生的扩展信息，这种关系也是一对一。</p>
	<img src="__PUBLIC__/images/1for1.jpg" alt="" width="100%">
	<h3>一对多关系</h3>
	<p>在学校中，咱们一个班级有很多学生，但一个学生不会有多少班级，如果一个学生表，另外一张是班级表，那他们之间的关系就是一对多</p>
	<img src="__PUBLIC__/images/1forn.jpg" alt="" width="100%">
	<h3>多对多关系</h3>
	<p>在学校中，咱们一个班级有多个任课老师，同时一个老师可以去多个班任课，这种就是多对多关系，那么如果记录这种关系呢，</p>
	<img src="__PUBLIC__/images/nforn.jpg" alt="" width="100%">
	<h2><a>笛卡尔积原理</a></h2>
	<p>在数学中，两个集合X和Y的笛卡尓积（Cartesian product），又称直积，表示为X × Y，第一个对象是X的成员而第二个对象是Y的所有可能有序对的其中一个成员。</p>
	<p>假设集合A={a, b}，集合B={0, 1, 2}，则两个集合的笛卡尔积为{(a, 0), (a, 1), (a, 2), (b, 0), (b, 1), (b, 2)}。</p>
	<img src="__PUBLIC__/images/dika.jpg" alt="" width="100%">
	<pre><code>mysql>select * from class,stu</code></pre>
	<p>但是单纯的对两个表的数据进行通过笛卡尔积获得的所有数据，显然这个结果是没有意义的，所以我们要对以上查询增加条件以产生有价值的数据集合。通过关联字段来实现</p>
	<pre><code>mysql>select * from class,stu where class.cid=stu.cid;
mysql>select * from class as c ,stu as s where s.cid = c.id;</code></pre>
	<h3>INNER JOIN（内连接,或等值连接）</h3>
	<p>获取两个表中字段匹配关系的记录。</p>
	<pre><code>mysql>select * from class c inner join stu s on c.id=s.cid;</code></pre>
	<img src="__PUBLIC__/images/img_innerjoin.gif" alt="">
	<h3>LEFT JOIN（左连接,外连接）</h3>
	<p>获取左表所有记录，即使右表没有对应匹配的记录。</p>
	<pre><code>mysql>select * from class c left join stu s on c.id=s.cid;</code></pre>
	<img src="__PUBLIC__/images/img_leftjoin.gif" alt="" >
	<h3>LEFT JOIN（右连接，外连接）</h3>
	<p>与 LEFT JOIN 相反，用于获取右表所有记录，即使左表没有对应匹配的记录。</p>
	<pre><code>mysql>select * from class c right join stu s on c.id=s.cid;</code></pre>
	<img src="__PUBLIC__/images/img_rightjoin.gif" alt="" >
	<h3>自连接</h3>
	<p>表和表自身进行检索操作的方式为自连接</p>
	<pre><code>mysql>select s2.name from stu as s1 inner join stu as s2 on  s1.cid=s2.cid where s1.name="李四";
</code></pre>
	<h3>作业</h3>
    <blockquote>
    	<ol>
    		<li>检索出李四都的所有老师</li>
    		<li>检索出和李四同一班的学生</li>
    		<li>检索出每个班级的学生数量 </li>
    		<li>检索出女生最多的班级</li>
    	</ol>
    </blockquote>
</article>